Six strategies for generalizing software engineering theories
نویسندگان
چکیده
a r t i c l e i n f o a b s t r a c t General theories of software engineering must balance between providing full understanding of a single case and providing partial understanding of many cases. In this paper we argue that for theories to be useful in practice, they should give sufficient understanding of a sufficiently large class of cases, without having to be universal or complete. We provide six strategies for developing such theories of the middle range. In lab-to-lab strategies, theories of laboratory phenomena are developed and generalized to other laboratory phenomena. This is a characteristic strategy for basic science. In lab-to-field strategies, theories are developed of artifacts that first operate under idealized laboratory conditions, which are then scaled up until they can operate under uncontrolled field conditions. This is the characteristic strategy for the engineering sciences. In case-based strategies, we generalize about components of real-world cases, that are supposed to exhibit less variation than the cases as a whole. In sample-based strategies, we generalize about the aggregate behavior of samples of cases, which can exhibit patterns not visible at the case level. We discuss three examples of sample-based strategies. Throughout the paper, we use examples of theories and generalization strategies from software engineering to illustrate our analysis. The paper concludes with a discussion of related work and implications for empirical software engineering research.
منابع مشابه
Improving software comprehension process by Adoption of Cognitive Theories in large-scale complex software maintenance An empirical research of cognitive theories in software maintenance Bachelor of Science Thesis in the Programme Software Engineering&Management
During the software maintenance process software comprehension is a time-consuming procedure. Fortunately, there are existing cognitive theories designed to improve software comprehension process. In this article, we intend to review six theories and perform an industrial case study in maintenance of a complex system. In order to find out whether to adopt cognitive theories in a specific mainte...
متن کاملAdding quality to teacher training by benefiting from strategies and prescriptive principles of effective teaching
Introduction: During the last six decades, various educational theories and models have been presented in the educational literature. Therefore, the aim of the current research was to provide appropriate strategies and principles in order to improve the effectiveness and quality of teachers' teaching Methods: Using qualitative content analysis method of inductive formation of classification, th...
متن کاملGeneralization and Theory-Building in Software Engineering Research
The main purpose of this paper is to generate discussions which may improve how we conduct empirical software engineering studies. Our position is that statistical hypothesis testing plays a too large role in empirical software engineering studies. The problems of applying statistical hypothesis testing in empirical software engineering studies is illustrated by the finding: Only 3 out of the 4...
متن کاملBuilding Theories in Software Engineering
In mature sciences, building theories is the principal method of acquiring and accumulating knowledge that may be used in a wide range of settings. In software engineering, there is relatively little focus on theories. In particular, there is little use and development of empirically-based theories. We propose, and illustrate with examples, an initial framework for describing software engineeri...
متن کاملA framework for exploring unifying theories of empirical software engineering
One of the reasons for the lack of rigor in software engineering compared to physical and behavioral sciences is that the theories that underpin our work, both as software engineers and as software engineering researchers, have not been given enough attention. To provide a step forward towards greater rigor, a framework has been created with which to explore theories of software engineering and...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Sci. Comput. Program.
دوره 101 شماره
صفحات -
تاریخ انتشار 2015